package core;
import java.io.IOException;
import java.util.HashMap;
import java.util.Map;

import javax.annotation.Resource;

import org.apache.commons.httpclient.HttpClient;
import org.apache.commons.httpclient.HttpException;
import org.apache.commons.httpclient.NameValuePair;
import org.apache.commons.httpclient.methods.PostMethod;
import org.dom4j.Document;   
import org.dom4j.DocumentException;
import org.dom4j.DocumentHelper;   
import org.dom4j.Element;   
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;

import dao.ServerTab;
import dao.ServerTabDAO;
@Component
public class SendSms {
	
//	private static String Url = "http://106.ihuyi.cn/webservice/sms.php?method=Submit";
	
	@Autowired
	private  ServerTabDAO serverTabDAO;
	public  Map<String, String> sendSms(String phone,String account,String password,String url,String flag) {

	   String Url=url;
		HttpClient client = new HttpClient(); 
		PostMethod method = new PostMethod(Url); 
		//client.getParams().setContentCharset("GBK");		
		client.getParams().setContentCharset("UTF-8");
		method.setRequestHeader("ContentType","application/x-www-form-urlencoded;charset=UTF-8");

		
		int mobile_code = (int)((Math.random()*9+1)*100000);

		//System.out.println(mobile);
		String content;
		if("replay".equals(flag)){
			 content = new String("客服已回复您的留言，请及时查看"); 
		}else {
			 content = new String("您的验证码是：" + mobile_code + "。请不要把验证码泄露给其他人。"); 
		}
		NameValuePair[] data = {//提交短信
			    new NameValuePair("account", account), 
			    new NameValuePair("password", password), //密码可以使用明文密码或使用32位MD5加密
			    //new NameValuePair("password", util.StringUtil.MD5Encode("密码")),
			    new NameValuePair("mobile", phone), 
			    new NameValuePair("content", content),
		};
		
		method.setRequestBody(data);		

		Map<String, String> result=new HashMap<String, String>();
		
		try {
			client.executeMethod(method);	
			
			String SubmitResult =method.getResponseBodyAsString();
					
			//System.out.println(SubmitResult);

			Document doc = DocumentHelper.parseText(SubmitResult); 
			Element root = doc.getRootElement();


			String code = root.elementText("code");	
			String msg = root.elementText("msg");	
			String smsid = root.elementText("smsid");	

			result.put("code", code);
			
//			System.out.println(code);
//			System.out.println(msg);
//			System.out.println(smsid);
						
			if(code == "2"){
//				System.out.println("短信提交成功");
			}
			
		} catch (HttpException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		} catch (IOException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		} catch (DocumentException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
		result.put("mobileCode", String.valueOf(mobile_code));
		return result;
	}
	
}